������������������������������������������������������� Proposal � Curious machines project�������������������������������������������������������������������������� Greg Detre, April 1, 2003

Analogies are at the crux of all of our most crucial high-level thinking. I am going to argue that analogising could well play a central role, not just in high-level perception, representation and conceptual/creative thinking, but potentially also in learning. Chalmers, French and Hofstadter[1] argue convincingly that �the most central and challenging part of analogy-making is the perceptual process: the shaping of situations into representations appropriate to a given context�. In other words, the hard part is figuring out how to aggregate your low-level percepts to form the most appropriate of various possible high-level situation-representations.

I�m going to briefly describe Hofstadter and Mitchell�s Copycat model[2], which embodies their approach to this problem. Copycat considers analogies like the following: abc : abd :: ijkk : ?. Most people would prefer ijll, but would recognise the validity of ijkl, ijkd, ijdd or abd, to name just a few. Copycat�s architecture is split into three broad parts. The Slipnet is a kind of long-term, conceptual memory, stored as a semantic network. The Workspace is where current hypotheses about the strings are considered, explored and dismantled. The Coderack chooses stochastically from the low-level, mini-processes (called �codelets�) that carry out specific tasks, e.g. scouting for patterns, building bonds, groups and bridges, evaluating structures that have already been built and breaking structures back down to their constituents. Hofstadter terms the system�s overall approach a �parallel terraced scan�, which can be understood in search terms as exploring the most promising avenues proportionally/probabilistically more. Where depth-first search uses a stack, and breadth-first uses a queue to decide the next node, the parallel terraced scan uses a stochastic priority-queue of codelets. These priorities are based on the interactions between the top-down associations and activity between concepts in the Slipnet and the bottom-up structures built by the codelets. I�m trying to decide how much of their architecture I can usefully co-opt � one interesting, simplifying option might be to add a new category of codelets, and get rid of the Slipnet � this might have the benefit of eventually making a more easily self-organisable version. The next version of Copycat, called Metacat, has some interesting additions (notably an ability to sift through an episodic memory).

What do we do when we learn? In short, we remember what works (and doesn�t work) in achieving our goals, and alter our decisions in the future accordingly. But one situation could contain many lessons (as well as many distractions). For our learning to be useful in future, we need to be able see what�s relevant about past situations in relation to our current situation, and make use now of the lesson learned then. This is a kind of analogy-making. Let us imagine that a system has already learned to employ Action X in some simple Situation A successfully. Now, when faced with Situation B, if it could see that Situation B is in some way analogous to Situation A, then it could try performing the Action Y that it believes is correspondingly analogous to Action X.

I�ve been puzzling over what sort of domain of situations and actions might be best to explore this idea. I�ll probably stick to some sort of letterstrings encoding, because although very limited, it allows for considerable complexity in the type of thinking that we�re able to do within it. However, I�m expecting the letterstrings domain in this project to differ in various ways from the Copycat letter-strings. Firstly, the mappings in my domain only run in one direction, from Situations to Actions, whereas the Copycat strings could be mapped both forwards and backwards. I�m not sure whether to try and find the same sort of analogies and patterns that Copycat does, or to change things a little, e.g. include oscillations, interleaving, escape characters. I�m imagining that different portions of the Situation string could represent different modalities, e.g. external sensory information and internal state information (motivations, moods/affective states). The Situation strings will vary in length, and the portions for the different modalities/emotions may not be presented in the same order each time. I�m envisioning something like:

 


Situations���������������������������������������������������� Actions

A���� abcd������������������������������������������������������ X�� vd

B���� ijkl��������������������������������������������������������� Y�� vl

A���� abbbbc�������������������������������������������������� X�� wb

B���� ijjjjk ������������������������������������������������������ Y�� wj


A���� abaeafah���������������������������������������������� X�� xa

B���� ikimioiqir��������������������������������������������� Y�� xi

A���� abcd ABBBBC DBDEDADFDH��������� X�� vdwBxD

B���� LKLMLOLQLR IJJJJK ijkl����������������� Y�� vlwJxL


* the encoding will be case-sensitive, because 26 letters won�t be enough. Also, in the last example, I�ve included spaces for the reader�s convenience � the system may have to find the boundaries itself.

These are deliberately simple. The hope is to start by feeding the system very simple prototypical Situation-Action string pairings, and build up to more complex Situation strings, in the way that infants appear to use various cues to pay attention to salient parts of the utterances they hear. Harder Situation strings may be much longer, contain more modalities, lack information from some modalities, have redundancy, distracting/irrelevant sequences, conflicting information and perhaps noise. A long-term goal would be to cope with continuous streams of information, rather than discretised strings of fixed (though arbitrary) length. Finally, I don�t know whether it will be possible to self-organise the Slipnet to some degree, to reflect the top-down priorities of the environment (e.g. paying more attention to sameness groups than successorship groups), perhaps by using unsupervised learning on a large corpus of previous situations.



[1] Chalmers, French and Hofstadter, �High-Level Perception, Representation and Analogy: A Critique of Artificial Intelligence Methodology� in Douglas Hofstadter, Fluid Concepts & Creative Analogies: Computer Models of the Fundamental Mechanisms of Thought, Basic Books, 1996.

[2] Melanie Mitchell, Analogy-Making as Perception. MIT Press, 1993.